Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2011
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Архітектура комп'ютерів

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» Кафедра БІТ  Звіт до лабораторної роботи № 3 Програма просте число З дисципліни “Архітектура комп’ютерних систем” Львів – 2011 Метою роботи є ознайомлення з програмою під назвою просте число, а також вдосконалення базисної версії програми. Базисна версія програми. ; WINDLX Exp.2: Generate prime number table ; (c) 1991 Guenther Raidl ; Modified 1992 Maziar Khosravipour ; Program begins at symbol main ; generates a table with the first 'Count' prime numbers from 'Table' ;--- .data ;--- size of table .global Count Count: .word 10 .global Table Table: .space Count*4 .text .global main main: ;--- Initialization addi r1,r0,0 ;Index in Table addi r2,r0,2 ;Current value ;--- Determine, if R2 can be divided by a value in table NextValue: addi r3,r0,0 ;Helpindex in Table Loop: seq r4,r1,r3 ;End of Table? bnez r4,IsPrim ;R2 is a prime number lw r5,Table(R3) divu r6,r2,r5 multu r7,r6,r5 subu r8,r2,r7 beqz r8,IsNoPrim addi r3,r3,4 j Loop IsPrim: ;--- Write value into Table and increment index sw Table(r1),r2 addi r1,r1,4 ;--- 'Count' reached? lw r9,Count srli r10,r1,2 sge r11,r10,r9 bnez r11,Finish IsNoPrim: ;--- Check next value addi r2,r2,1 ;increment R2 j NextValue Finish: ;--- end trap 0 Результат виконання базисної програми Протокол роботи конвеєра   Протокол статистики  Як бачимо програма виконується за 2605 цикли. Також в програмі присутні затримки конвеєра. Кількість RAW stalls рівна – 2021. Усунути ці затримки можна перебудувавши код програми. Модифікована версія програми: ; WINDLX Exp.2: Generate prime number table ; (c) 1991 Guenther Raidl ; Modified 1992 Maziar Khosravipour ; Program begins at symbol main ; generates a table with the first 'Count' prime numbers from 'Table' ;--- .data ;--- size of table .global Count Count: .word 10 .global Table Table: .space Count*4 .text .global main main: ;--- Initialization addi r1,r0,0 ;Index in Table addi r2,r0,2 ;Current value ;--- Determine, if R2 can be divided by a value in table NextValue: addi r3,r0,0 ;Helpindex in Table Loop: seq r4,r1,r3 ;End of Table? lw r5,Table(R3) bnez r4,IsPrim ;R2 is a prime number divu r6,r2,r5 multu r7,r6,r5 subu r8,r2,r7 addi r3,r3,4 beqz r8,IsNoPrim j Loop IsPrim: ;--- Write value into Table and increment index sw Table(r1),r2 addi r1,r1,4 ;--- 'Count' reached? lw r9,Count srli r10,r1,2 sge r11,r10,r9 bnez r11,Finish IsNoPrim: ;--- Check next value addi r2,r2,1 ;increment R2 j NextValue Finish: ;--- end trap 0 Протокол роботи конвеєра   Протокол статистики  Після перебудови коду кількість затримок стала меншою і програма виконується за меншу кількість циклів – 2416. І кількість RAW зупинок зменшилась до 1528. Висновок У даній лабораторній роботі я ознайомився з програмою під назвою просте число, а також вдосконалив код базисної версії програми.
Антиботан аватар за замовчуванням

22.05.2013 18:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини